<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script>
    // 1.如果想在创建的同时初始化实例,需要传入一个可迭代对象
    const m1 = new Map([
        ['a', 1],
        ['b', 2],
        ['c', 3]
    ]);
    // 2.使用自定义迭代器初始化映射(还是别折腾了)
    const m2 = new Map({
        [Symbol.iterator]: function* () {
            yield  ['a', 1];
            yield  ['b', 2];
            yield  ['c', 3];

        }
    })

    // set() 设置键值对
    // get() 通过键获取值
    // has() 是否有某个键
    // size() 多少个
    // delete() 删除某个
    // clear() 清空
    const m3 = new Map()
        .set('name', '张三')
        .set('age', 12)
    console.log(m3.get('name'))
    console.log(m3.has('age'))
    console.log(m3.size)
    console.log(m3.delete('name'))
    console.log(m3.clear())

    // 3.map可以用任意数据类型作为键,而object只能使用数字,字符串或符号作为键
</script>
</body>
</html>